package com.dalonedrau.jogl.engine;

import com.jogamp.opengl.util.texture.Texture;

public abstract class GameController {
	private static GameController	instance;
	public static GameController getInstance() {
		return GameController.instance;
	}
	protected static void setInstance(final GameController controller) {
		GameController.instance = controller;
	}
	public abstract Texture getTexture(final int id) throws Exception;
	/** Initializes the frame. */
	protected abstract void initApplet();
	/** Initializes the texture library. */
	public abstract void initTextureLibrary();
	/** Initializes the game animations. */
	public abstract void initAnimations();
	/** Initializes the game data. */
	public abstract void initGameData();
	/** Switches the game screen. */
	public abstract void switchScreen() throws Exception;
	/** Updates the game. */
	public abstract void update();
}
